Reducing Memory Sharing Overheads in Distributed JVMs
نویسندگان
چکیده
Distributed JVM systems by supporting Java’s shared-memory model enable concurrent Java applications to run transparently on clusters of computers. Aiming to reduce the overheads associated to memory coherence enforcement mechanisms required in such distributed JVMs, we propose two new techniques, selective dynamic diffing and lazy home allocation. To evaluate their potential benefits, both techniques were implemented in CoJVM, a distributed JVM system that we developed in a previous work. In the sequel, several experiments based on five representative concurrent Java applications were carried out using the original and modified CoJVM versions. The analysis of the experimental results showed that dynamic diffing and lazy home allocation, either in isolation or in combination, can reduce significantly memory sharing overheads due to message traffic, extra memory space, and high latency of remote memory accesses. Specifically, the application of these techniques resulted in considerable gains in performance, ranging from 9% up to 20% in four out of five applications, with speedups varying from 6.5 up to 8.1 for an 8-node cluster.
منابع مشابه
Reducing System Overheads in Home-based Software DSMs
Software DSM systems su er from the high communication and coherence-induced overheads that limit performance. This paper introduces our e orts in reducing system overheads of a home-based software DSM called JIAJIA. Three measures, including eliminating false sharing through avoiding unnecessarily invalidating cached pages, reducing virtual memory page faults with a new write detection scheme,...
متن کاملView Caching: Efficient Software Shared Memory for Dynamic Computations
Software distributed shared memory (DSM) techniques, while effective on applications with coarse-grained sharing, yield poor performance for the fine-grained sharing encountered in applications increasingly relying on sophisticated adaptive and hierarchical algorithms. Such applications exhibit irregular communication patterns unsynchronized with computation, incurring large overheads for synch...
متن کاملKaffemik: Supporting a distributed JVM on a single address space architecture
Java is increasingly used to develop large server applications. In order to provide powerful platforms for such applications a number of projects have proposed Java Virtual Machines (JVMs) that are based on network of workstations. These JVMs employ the message-passing paradigm, i.e. all communication between the distributed instances of the virtual machine take place using remote method invoca...
متن کاملA False-Sharing Free Distributed Shared Memory Management Scheme
Distributed shared memory (DSM) systems on top of network of workstations are especially vulnerable to the impact of false sharing because of their higher memory transaction overheads and thus higher false sharing penalties. In this paper we develop a dynamic-granularity shared memory management scheme that eliminates false sharing without sacrificing the transparency to conventional shared-mem...
متن کاملImplementing Scoped Behaviour for Flexible Distributed Data Sharing
Distributed-memory hardware platforms, such as a network of workstations, are attractive because of their ubiquitousness and good price-performance. However, there are high communications overheads associated with sharing data between distributed memories. While message-passing programming systems provide the greatest low-level flexibility to optimize the overheads, shared-data systems provide ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2005